$NG.AllReady(function (page, { useDataIndexChange, useValuesChange, useClick, useUpdateRows }) {


    const oneTable = $NG.getCmpApi("p_form_ywgcwb_pay")
    useValuesChange(({args})=>{
        console.log(`监听的项目选择`,args);
        const id = args[0].phid_pc?.phid_pc?args[0].phid_pc?.pc_no:"";
        console.log(`项目id`,id);
        // 通过项目id获取项目信息
        getProjectInfo()
        // 过滤合同
        cntMFilter()
    }, "p_form_ywgcwb_pay.phid_pc")
    // 监听合同编码的选择
    useValuesChange(({args})=>{
        console.log(`合同编码监听信息`,args);    
        const infoId = args[0].u_main_cnt.origin.bill_no
        if(infoId){
            $NG.updateState((updater)=>{
                updater.data.p_form_ywgcwb_pay.setProps({
                    u_main_cnt_no: infoId
                })
            })
            // 防止上面延迟执行这里使用延迟
            setTimeout(()=>{
                getCntInfo()
            },300)
        }else{
            $NG.alert('获取合同id失败了~~')
        }
    }, "p_form_ywgcwb_pay.u_main_cnt")


 
    function getProjectInfo(){
        console.log(`项目phid_pc`, oneTable.getItem("phid_pc").getValue());
        $NG.execServer("getPtInfoByPhid", {phid:oneTable.getItem("phid_pc").getValue()}, (res) => {
            const datas = JSON.parse(res.data)[0].extendObjects
            console.log(`项目jsonINfo`,datas);
            $NG.updateState((updater)=>{
                updater.data.p_form_ywgcwb_pay.setProps({
                    u_pc_no:datas.pc_no,
                    u_division:{
                        value: datas.division_phid,
                        label: datas.division_name
                    },
                    u_regional_center:{
                        value:datas.regional_center_phid,
                        label:datas.regional_center_name
                    },
                    u_product_line:{
                        label:datas.midwife_name,
                        value:datas.midwife_phid,
                    }
                })
            })
        })
    }

//合同根据项目ID过滤
function cntMFilter() {
    $NG.updateUI((updater, state) => {
        console.log('过滤参数检查', updater);
        updater.form.p_form_ywgcwb_pay.u_main_cnt.setProps({
            onBeforeOpen: async () => {
                var phid_pc = $NG.getCmpApi('p_form_ywgcwb_pay').getItem('phid_pc').getValue();
                if (!phid_pc) {
                    $NG.alert("请先选择项目");
                    return false;
                } else {
                    return true;
                }
            },
            ...(!!$NG.getCmpApi('p_form_ywgcwb_pay').getItem('phid_pc').getValue() && {
                clientSqlFilter: {
                    bill_type: 4,//合同类型
                    phid_pc: $NG.getCmpApi('p_form_ywgcwb_pay').getItem('phid_pc').getValue()
                }
            }),
        });
    });
}
 

function getCntInfo(){
    console.log(`合同id`,oneTable.getItem('u_main_cnt').getValue());
    $NG.execServer("getCntMInfoByPhid", {phid:oneTable.getItem('u_main_cnt').getValue()} ,(res)=>{
        const datas = JSON.parse(res.data)[0].extendObjects
        console.log("通过合同id获取的信息",datas);
        $NG.updateState((updater)=>{
            updater.data.p_form_ywgcwb_pay.setProps({
                u_fbht_amt:datas.cnt_sum_vat_fc,
                u_zfjsjs: datas.cnt_sum_vat_fc,
                u_product_line:{
                    label:datas.midwife_name?datas.midwife_name:"",
                    value:datas.midwife_phid?datas.midwife_phid:"",
                },
                u_supply:{
                    label:datas.supply_name,
                    value:datas.supply_id
                }
            })
        })
    })
}


//监听发票信息表
useUpdateRows(({ args }) => {
    console.log('更新数据2', args[0]);
    reduceTable2(args[0])

}, 'p_form_ywgcwb_pay_d2');
function reduceTable2(rows){
    // 发票金额 
    let u_amt = 0;
    // 税额
    let u_tax_amt = 0;
    // 价税合计
    let u_amt_vat_total = 0 ;
    rows.forEach((item,index)=>{
        u_amt+=(item.u_amt?item.u_amt:0)
        u_tax_amt+=(item.u_tax_amt?item.u_tax_amt:0)
    })
    $NG.updateState((updater)=>{
        updater.data.p_form_ywgcwb_pay.setProps({
            u_bckpje:u_amt,
            u_yksje:u_tax_amt
        })
    })
}
//监听付款信息表
useUpdateRows(({ args }) => {
    console.log('更新数据1', args[0]);
    reduceTable1(args[0])
    setTimeout(()=>{
        $NG.updateState((updater)=>{
            console.log(`百分百比：`,Number(oneTable.getItem("u_bcsqfkje").getValue()),Number(oneTable.getItem("u_fbht_amt").getValue()));
            updater.data.p_form_ywgcwb_pay.setProps({
                u_fbljkpzb:(Number(oneTable.getItem("u_bcsqfkje").getValue())/Number(oneTable.getItem("u_fbht_amt").getValue())).toFixed(2)
            })
        })
    },200)
}, 'p_form_ywgcwb_pay_d1');
function reduceTable1(rows){
    // 未付金额
    let u_ahtyfqfje = 0;
    // 申请金额
    let u_bq_apply_je = 0;
    rows.forEach((item,index)=>{
        u_ahtyfqfje+=(item.u_ahtyfqfje?item.u_ahtyfqfje:0)
        u_bq_apply_je+=(item.u_bq_apply_je?item.u_bq_apply_je:0)
    })
    $NG.updateState((updater)=>{
        updater.data.p_form_ywgcwb_pay.setProps({
            u_main_cnt_ykpje:u_ahtyfqfje,
            u_bcsqfkje:u_bq_apply_je
        })
    })
}
//监听申请金额
    useValuesChange(({args})=>{
        console.log(`申请金额监听`,args);
        
    },"p_form_ywgcwb_pay.u_bcsqfkje")
    // { //添加按钮
    //     $NG.getCmpApi('toolbar_p_form_ywgcwb_pay_d2').insert({
    //         id: "scfq",
    //         text: "上传发票",
    //         iconCls: "icon-New"
    //     });
    // }
    // { //添加按钮
    //     $NG.getCmpApi('toolbar_p_form_ywgcwb_pay_d2').insert({
    //         id: "lqfq",
    //         text: "拉取发票",
    //         iconCls: "icon-New"
    //     });
    // }
    // useClick(async function ({ args }) {
    //     alert('上传发票成功')
    // }, "scfq");
    // useClick(async function ({ args }) {
    //     alert('拉取发票成功')
    // }, "lqfq");
});